// Package repository
// @Author: zhangdi
// @File: update_config
// @Version: 1.0.0
// @Date: 2023/11/26 20:08
package repository

// UpdateColumnsAll 强制更新所有字段，不管是否为零值
const UpdateColumnsAll = "#--all--#"

// UpdateColumnsNotZero 更更新非零值的字段
const UpdateColumnsNotZero = "#--not_zero--#"

// UpdateColumnsNotZeroAndStr 更新非零值和所有的【字符串】类型字段
const UpdateColumnsNotZeroAndStr = "#--not_zero_and_str--#"

// UpdateColumnsNotZeroAndNumber 更新非零值和所有的【整型】类型字段
const UpdateColumnsNotZeroAndNumber = "#--not_zero_and_number--#"

// UpdateTypList 允许的type列表
var UpdateTypList = []string{UpdateColumnsAll, UpdateColumnsNotZero,
	UpdateColumnsNotZeroAndStr, UpdateColumnsNotZeroAndNumber}

// UpdateConfig 更新配置
// UpdateFields优先级大于UpdateColumnsType
type UpdateConfig struct {
	//更新的字段类型 可选值有上面四个常量
	UpdateColumnsType string
	//指定更新的字段，当传入这个切片时 只会更新该列表里的字段值，不传入则值默认取UpdateColumnsNotZero
	UpdateFields []string
}
